package com.wcm.system.model.shehuikexueyuantushu;

import javax.persistence.*;

@Entity
@Table(name = "HT_Menu", schema = "dbo", catalog = "DB_HRCounter")
public class HtMenuEntity {
    private int menuId;
    private int parentId;
    private int modelId;
    private String className;
    private String classEName;
    private short menuType;
    private String parentPath;
    private String templateClass;
    private String templateContent;
    private String banner;
    private String summary;
    private String content;
    private short depth;
    private String manageUrl;
    private String manageTarget;
    private String linkUrl;
    private int orderId;
    private boolean isMain;
    private boolean isHidden;

    @Id
    @Column(name = "Menu_ID")
    public int getMenuId() {
        return menuId;
    }

    public void setMenuId(int menuId) {
        this.menuId = menuId;
    }

    @Basic
    @Column(name = "Parent_ID")
    public int getParentId() {
        return parentId;
    }

    public void setParentId(int parentId) {
        this.parentId = parentId;
    }

    @Basic
    @Column(name = "Model_ID")
    public int getModelId() {
        return modelId;
    }

    public void setModelId(int modelId) {
        this.modelId = modelId;
    }

    @Basic
    @Column(name = "Class_Name")
    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }

    @Basic
    @Column(name = "Class_E_Name")
    public String getClassEName() {
        return classEName;
    }

    public void setClassEName(String classEName) {
        this.classEName = classEName;
    }

    @Basic
    @Column(name = "Menu_Type")
    public short getMenuType() {
        return menuType;
    }

    public void setMenuType(short menuType) {
        this.menuType = menuType;
    }

    @Basic
    @Column(name = "Parent_Path")
    public String getParentPath() {
        return parentPath;
    }

    public void setParentPath(String parentPath) {
        this.parentPath = parentPath;
    }

    @Basic
    @Column(name = "Template_Class")
    public String getTemplateClass() {
        return templateClass;
    }

    public void setTemplateClass(String templateClass) {
        this.templateClass = templateClass;
    }

    @Basic
    @Column(name = "Template_Content")
    public String getTemplateContent() {
        return templateContent;
    }

    public void setTemplateContent(String templateContent) {
        this.templateContent = templateContent;
    }

    @Basic
    @Column(name = "Banner")
    public String getBanner() {
        return banner;
    }

    public void setBanner(String banner) {
        this.banner = banner;
    }

    @Basic
    @Column(name = "Summary")
    public String getSummary() {
        return summary;
    }

    public void setSummary(String summary) {
        this.summary = summary;
    }

    @Basic
    @Column(name = "Content")
    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    @Basic
    @Column(name = "Depth")
    public short getDepth() {
        return depth;
    }

    public void setDepth(short depth) {
        this.depth = depth;
    }

    @Basic
    @Column(name = "Manage_Url")
    public String getManageUrl() {
        return manageUrl;
    }

    public void setManageUrl(String manageUrl) {
        this.manageUrl = manageUrl;
    }

    @Basic
    @Column(name = "Manage_Target")
    public String getManageTarget() {
        return manageTarget;
    }

    public void setManageTarget(String manageTarget) {
        this.manageTarget = manageTarget;
    }

    @Basic
    @Column(name = "Link_Url")
    public String getLinkUrl() {
        return linkUrl;
    }

    public void setLinkUrl(String linkUrl) {
        this.linkUrl = linkUrl;
    }

    @Basic
    @Column(name = "Order_ID")
    public int getOrderId() {
        return orderId;
    }

    public void setOrderId(int orderId) {
        this.orderId = orderId;
    }

    @Basic
    @Column(name = "Is_Main")
    public boolean isMain() {
        return isMain;
    }

    public void setMain(boolean main) {
        isMain = main;
    }

    @Basic
    @Column(name = "Is_Hidden")
    public boolean isHidden() {
        return isHidden;
    }

    public void setHidden(boolean hidden) {
        isHidden = hidden;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        HtMenuEntity that = (HtMenuEntity) o;

        if (menuId != that.menuId) return false;
        if (parentId != that.parentId) return false;
        if (modelId != that.modelId) return false;
        if (menuType != that.menuType) return false;
        if (depth != that.depth) return false;
        if (orderId != that.orderId) return false;
        if (isMain != that.isMain) return false;
        if (isHidden != that.isHidden) return false;
        if (className != null ? !className.equals(that.className) : that.className != null) return false;
        if (classEName != null ? !classEName.equals(that.classEName) : that.classEName != null) return false;
        if (parentPath != null ? !parentPath.equals(that.parentPath) : that.parentPath != null) return false;
        if (templateClass != null ? !templateClass.equals(that.templateClass) : that.templateClass != null)
            return false;
        if (templateContent != null ? !templateContent.equals(that.templateContent) : that.templateContent != null)
            return false;
        if (banner != null ? !banner.equals(that.banner) : that.banner != null) return false;
        if (summary != null ? !summary.equals(that.summary) : that.summary != null) return false;
        if (content != null ? !content.equals(that.content) : that.content != null) return false;
        if (manageUrl != null ? !manageUrl.equals(that.manageUrl) : that.manageUrl != null) return false;
        if (manageTarget != null ? !manageTarget.equals(that.manageTarget) : that.manageTarget != null) return false;
        if (linkUrl != null ? !linkUrl.equals(that.linkUrl) : that.linkUrl != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = menuId;
        result = 31 * result + parentId;
        result = 31 * result + modelId;
        result = 31 * result + (className != null ? className.hashCode() : 0);
        result = 31 * result + (classEName != null ? classEName.hashCode() : 0);
        result = 31 * result + (int) menuType;
        result = 31 * result + (parentPath != null ? parentPath.hashCode() : 0);
        result = 31 * result + (templateClass != null ? templateClass.hashCode() : 0);
        result = 31 * result + (templateContent != null ? templateContent.hashCode() : 0);
        result = 31 * result + (banner != null ? banner.hashCode() : 0);
        result = 31 * result + (summary != null ? summary.hashCode() : 0);
        result = 31 * result + (content != null ? content.hashCode() : 0);
        result = 31 * result + (int) depth;
        result = 31 * result + (manageUrl != null ? manageUrl.hashCode() : 0);
        result = 31 * result + (manageTarget != null ? manageTarget.hashCode() : 0);
        result = 31 * result + (linkUrl != null ? linkUrl.hashCode() : 0);
        result = 31 * result + orderId;
        result = 31 * result + (isMain ? 1 : 0);
        result = 31 * result + (isHidden ? 1 : 0);
        return result;
    }
}
